package com.example.springboot.mapper;


import com.example.springboot.pojo.User;
import com.github.pagehelper.PageInfo;
import org.apache.ibatis.annotations.Mapper;
import org.springframework.data.domain.Page;
import org.springframework.data.jpa.repository.Query;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;

/**
 *  用户信息的Mapper接口
 */
@Mapper
public interface UserMapper {


    /**
     * 查询用户信息表
     * @return 用户信息表中的内容
     */
    ArrayList<User> getUserInfo();


    /**
     * 根据用户ID来查询用户信息
     * @param id 用户ID
     * @return
     */
    User findByID(Integer id);

    /**
     * 添加用户信息操作
     * @param user 用户信息
     * @return  返回受影响行数
     */
    Integer insertUser(User user);

    /**
     * 根据用户名称删除用户信息
     * @param id
     * @return 返回受影响行数
     */
    Integer deleteUserByName(Integer id);


    /**
     *  根据用户提交的信息来进行修改
     * @param id
     * @param name
     * @param age
     * @param email
     * @return       返回受影响行数
     */
    Integer updateUser(Integer id,String name,Integer age,String email);


    /**
     * 联表查询,和wzf_user_scope
     * @return
     */
    ArrayList<User> findUserByUserScope();


    /**
     * 对用户信息表进行排序
     * @return  查询到的用户信息表集合
     */
    ArrayList<User> socketUserByAge();
}
